﻿using Abp.Domain.Entities.Auditing;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Camc.Quality.RecordTable.FormClass
{
    /// <summary>
    /// 环境要素表
    /// </summary>
    public class EnvironmentEntity : FullAuditedEntity<Guid>
    {
        public EnvironmentEntity()
        {

        }

        public EnvironmentEntity(string temperature, string temperature_DisplayName, bool temperature_Enable, bool temperature_Show, int temperature_Property, string humidity, string humidity_DisplayName, bool humidity_Enable, bool humidity_Show, int humidity_Property, string atmPressure, string atmPressure_DisplayName, bool atmPressure_Enable, bool atmPressure_Show, int atmPressure_Property)
        {
            Temperature = temperature;
            Temperature_DisplayName = temperature_DisplayName;
            Temperature_Enable = temperature_Enable;
            Temperature_Show = temperature_Show;
            Temperature_Property = temperature_Property;
            Humidity = humidity;
            Humidity_DisplayName = humidity_DisplayName;
            Humidity_Enable = humidity_Enable;
            Humidity_Show = humidity_Show;
            Humidity_Property = humidity_Property;
            AtmPressure = atmPressure;
            AtmPressure_DisplayName = atmPressure_DisplayName;
            AtmPressure_Enable = atmPressure_Enable;
            AtmPressure_Show = atmPressure_Show;
            AtmPressure_Property = atmPressure_Property;
        }

        #region 温度
        /// <summary>
        /// 温度值
        /// </summary>
        public virtual string Temperature { get; protected set; }
        /// <summary>
        /// 温度列名
        /// </summary>
        public virtual string Temperature_DisplayName { get; protected set; }
        /// <summary>
        /// 是否可操作
        /// </summary>
        public virtual bool Temperature_Enable { get; protected set; } = true;
        /// <summary>
        /// 是否显示
        /// </summary>
        public virtual bool Temperature_Show { get; protected set; } = false;
        /// <summary>
        /// 是否合并
        /// </summary>
        public virtual int Temperature_Property { get; protected set; } = 0;
        #endregion

        #region 湿度
        /// <summary>
        /// 湿度值
        /// </summary>
        public virtual string Humidity { get; protected set; }
        /// <summary>
        /// 湿度列名
        /// </summary>
        public virtual string Humidity_DisplayName { get; protected set; }
        /// <summary>
        /// 是否可操作
        /// </summary>
        public virtual bool Humidity_Enable { get; protected set; } = false;
        /// <summary>
        /// 是否显示
        /// </summary>
        public virtual bool Humidity_Show { get; protected set; } = false;
        /// <summary>
        /// 是否合并
        /// </summary>
        public virtual int Humidity_Property { get; protected set; } = 0;
        #endregion

        #region 大气压力
        /// <summary>
        /// 大气压力值
        /// </summary>
        public virtual string AtmPressure { get; protected set; }
        /// <summary>
        /// 大气压力列名
        /// </summary>
        public virtual string AtmPressure_DisplayName { get; protected set; }
        /// <summary>
        /// 是否可操作
        /// </summary>
        public virtual bool AtmPressure_Enable { get; protected set; } = false;
        /// <summary>
        /// 是否显示
        /// </summary>
        public virtual bool AtmPressure_Show { get; protected set; } = false;
        /// <summary>
        /// 是否合并
        /// </summary>
        public virtual int AtmPressure_Property { get; protected set; } = 0;
        #endregion

        /// <summary>
        /// H1温度
        /// </summary>
        /// <param name="temperature"></param>
        /// <param name="temperature_DisplayName"></param>
        /// <param name="temperature_Enable"></param>
        /// <param name="temperature_Show"></param>
        /// <param name="temperature_Property"></param>
        public void SetTemperature(string temperature, string temperature_DisplayName, bool temperature_Enable, bool temperature_Show, int temperature_Property)
        {
            Temperature = temperature;
            Temperature_DisplayName = temperature_DisplayName;
            Temperature_Enable = temperature_Enable;
            Temperature_Show = temperature_Show;
            Temperature_Property = temperature_Property;
        }
        /// <summary>
        /// H2湿度
        /// </summary>
        /// <param name="humidity"></param>
        /// <param name="humidity_DisplayName"></param>
        /// <param name="humidity_Enable"></param>
        /// <param name="humidity_Show"></param>
        /// <param name="humidity_Property"></param>
        public void SetHumidity(string humidity, string humidity_DisplayName, bool humidity_Enable, bool humidity_Show, int humidity_Property)
        {
            Humidity = humidity;
            Humidity_DisplayName = humidity_DisplayName;
            Humidity_Enable = humidity_Enable;
            Humidity_Show = humidity_Show;
            Humidity_Property = humidity_Property;
        }
        /// <summary>
        /// H3大气压力
        /// </summary>
        /// <param name="atmPressure"></param>
        /// <param name="atmPressure_DisplayName"></param>
        /// <param name="atmPressure_Enable"></param>
        /// <param name="atmPressure_Show"></param>
        /// <param name="atmPressure_Property"></param>
        public void SetAtmPressure(string atmPressure, string atmPressure_DisplayName, bool atmPressure_Enable, bool atmPressure_Show, int atmPressure_Property)
        {
            AtmPressure = atmPressure;
            AtmPressure_DisplayName = atmPressure_DisplayName;
            AtmPressure_Enable = atmPressure_Enable;
            AtmPressure_Show = atmPressure_Show;
            AtmPressure_Property = atmPressure_Property;
        }
    }
}
